package com.knife.oauth.app.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.knife.oauth.api.vo.IamMenuTree;
import com.knife.oauth.domain.entity.IamRoleMenu;

import java.util.List;

/**
 * 角色菜单关联(IamRoleMenu)应用服务
 *
 * @author tianhao.luo@hand-china.com
 * @since 2025-08-13 14:19:30
 */
public interface IamRoleMenuService {

    /**
     * 查询数据
     *
     * @param pageRequest  分页参数
     * @param iamRoleMenus 查询条件
     * @return 返回值
     */
    Page<IamRoleMenu> selectList(Page<IamRoleMenu> pageRequest, IamRoleMenu iamRoleMenus);

    /**
     * 保存数据
     *
     * @param iamRoleMenus 数据
     */
    void saveData(List<IamRoleMenu> iamRoleMenus);

    /**
     * 查询拥有的菜单树
     *
     * @return 树
     */
    List<IamMenuTree> selectTree(Long tenantId) throws IllegalAccessException;

}

